<?php
	
	//------------------------------------------------------------------
	//	класс request является надстройкой над io, необходимой для получения различных параметров
	//	от парсинга реквеста, до получения ключей вроде "module" и "action"
	//
	//------------------------------------------------------------------

	class request extends service {
		
		public function get_module_name(){
			$cfg = context::get("config");
			
			$id = $this->get_module_id();
				
			$default_module = $cfg["core"]["default_module"];
			$request_module = context::get("io")->get($id);
				
			$module_name = $request_module ? $request_module : $default_module;
			
			if (context::get("module_factory")->valid_module($module_name)){
				return $module_name;
			}else{
				return $default_module;
			}

		}
		
		public function get_module_id(){
			$cfg = context::get("config");
			
			
			#no more annoying warnings
			if (isset($cfg["core"]["module_id"])){
				$id = $cfg["core"]["module_id"];
			}else{
				$id = "page";
			}
			
			#$id = $cfg["core"]["module_id"] ? $cfg["core"]["module_id"] : "page";
			
			return $id;
		}

		public function get_parameter($param, $type = "string" ){
			return $this->get_param($param, $type);
		}
		
		public function get_param($param, $type = "string" ){
			return context::get("io")->get($param, $type);
		}
}












?>
